#pragma once
#include"rbtree.h"
template<class T>
class set {
public:
	struct RBG {
		T operator()(T a) {
			return a;

		}
	};
	typedef typename RBtree<T, const T, RBG>::Iterator iterator;
    set() : root() {};
	/*bool insert(T data) {
		return root.Insert(data);
	}*/
	iterator begin() {
		return root.begin;
	}
	iterator end() {
		return root.end();
	}
	pair <bool, iterator> insert(T data) {
		return root.Insert(data);
	}
	
private:
	RBtree<T,T,RBG> root;
};

